package Dict;

/**
 * Interface definition: Dictionnary.
 * 
 * @author OpenORB Compiler
 */
public class DictionnaryPOATie extends DictionnaryPOA
{

    //
    // Private reference to implementation object
    //
    private DictionnaryOperations _tie;

    //
    // Private reference to POA
    //
    private org.omg.PortableServer.POA _poa;

    /**
     * Constructor
     */
    public DictionnaryPOATie(DictionnaryOperations tieObject)
    {
        _tie = tieObject;
    }

    /**
     * Constructor
     */
    public DictionnaryPOATie(DictionnaryOperations tieObject, org.omg.PortableServer.POA poa)
    {
        _tie = tieObject;
        _poa = poa;
    }

    /**
     * Get the delegate
     */
    public DictionnaryOperations _delegate()
    {
        return _tie;
    }

    /**
     * Set the delegate
     */
    public void _delegate(DictionnaryOperations delegate_)
    {
        _tie = delegate_;
    }

    /**
     * _default_POA method
     */
    public org.omg.PortableServer.POA _default_POA()
    {
        if (_poa != null)
            return _poa;
        else
            return super._default_POA();
    }

    /**
     * Operation addEntity
     */
    public void addEntity(String term, Dict.CategoryValue cat, Dict.PropertyType props, String def)
        throws Dict.TermExisted, Dict.CategoryAndPropsNotMatch
    {
        _tie.addEntity( term,  cat,  props,  def);
    }

    /**
     * Operation delEntity
     */
    public void delEntity(String term)
        throws Dict.TermNotFound
    {
        _tie.delEntity( term);
    }

    /**
     * Operation modifDefinition
     */
    public void modifDefinition(String term, String newdef)
        throws Dict.TermNotFound
    {
        _tie.modifDefinition( term,  newdef);
    }

    /**
     * Operation findEntity
     */
    public Dict.Entity findEntity(String term)
        throws Dict.TermNotFound
    {
        return _tie.findEntity( term);
    }

    /**
     * Operation sortDict
     */
    public void sortDict(boolean dir)
    {
        _tie.sortDict( dir);
    }

    /**
     * Operation loadDict
     */
    public int loadDict()
        throws Dict.DicFileNotFound
    {
        return _tie.loadDict();
    }

    /**
     * Operation saveDict
     */
    public void saveDict()
    {
        _tie.saveDict();
    }

    /**
     * Operation dictLength
     */
    public int dictLength()
    {
        return _tie.dictLength();
    }

    /**
     * Operation firstEntity
     */
    public Dict.Entity firstEntity()
        throws Dict.DictEmpty
    {
        return _tie.firstEntity();
    }

    /**
     * Operation lastEntity
     */
    public Dict.Entity lastEntity()
        throws Dict.DictEmpty
    {
        return _tie.lastEntity();
    }

    /**
     * Operation nextEntity
     */
    public Dict.Entity nextEntity()
        throws Dict.DictEmpty
    {
        return _tie.nextEntity();
    }

    /**
     * Operation prevEntity
     */
    public Dict.Entity prevEntity()
        throws Dict.DictEmpty
    {
        return _tie.prevEntity();
    }

    /**
     * Operation myDefinition
     */
    public String myDefinition()
    {
        return _tie.myDefinition();
    }

}
